import { SQLOptions } from './components/QueryEditor/types';

export enum mogdbTLSModes {
  disable = 'disable',
  require = 'require',
  verifyCA = 'verify-ca',
  verifyFull = 'verify-full',
}

export enum mogdbTLSMethods {
  filePath = 'file-path',
  fileContent = 'file-content',
}

export interface BasicDataSourceOptions extends SQLOptions {
  tlsConfigurationMethod?: mogdbTLSMethods;
  sslmode?: mogdbTLSModes;
  sslRootCertFile?: string;
  sslCertFile?: string;
  sslKeyFile?: string;
  mogdbVersion?: number;
  timescaledb?: boolean;
}

export interface BasicSecureJsonData {
  password?: string;
}
